#ifndef _ISSH_H_
#define _ISSH_H_

typedef long ChannelId;

interface IChannel : public IBase
{
    std_method_(ChannelId, CreateChannel)() PURE;
    std_method(CloseChannel)(ChannelId id) PURE;
    std_method_(ssize_t, SendChannel)(ChannelId id,char* buf,size_t len) PURE;
    std_method_(ssize_t, RecvChannel)(ChannelId id,char* buf,size_t len) PURE;
};
_DEFINE_IID(IChannel, "{45BAC576-355D-4D08-8B86-0283BE3E7FBF}");


// {4A27FA11-BEA7-46E8-9F32-EC0C9F6E1A9E}
_DEFINE_GUID(CLSID_Channel, 
    0x4a27fa11, 0xbea7, 0x46e8, 0x9f, 0x32, 0xec, 0xc, 0x9f, 0x6e, 0x1a, 0x9e);

#endif
